import moment from 'moment';
// 命名规范：Arr普通枚举  field下拉字段枚举  Map表格字段枚举

// 表头筛选字段
const headerForm = {};
// 表格字段
const tableColumn = {
  // 表格列表
  orderTableMap: [
    { prop: 'id', label: 'Id', type: 'text' },
    { prop: 'username', label: '用户名', type: 'text' },
    { prop: 'orderNo', label: '订单号', type: 'text' },
    { prop: 'orderPrice', label: '订单金额', type: 'text', tooltipText: '含优惠折扣' },
    { prop: 'orderSourceStr', label: '订单来源', type: 'text' },
    { prop: 'orderStatusStr', label: '订单状态', type: 'text' },
    { prop: 'outPrice', label: '退款金额', type: 'text' },
    { prop: 'outTime', label: '退款时间', type: 'text' },
    { prop: 'payPrice', label: '实际付款金额', type: 'text', tooltipText: '包含运费' },
    { prop: 'payStatusStr', label: '付款状态', type: 'text' },
    { prop: 'payTime', label: '付款时间', type: 'text' },
    { prop: 'payTypeStr', label: '支付方式', type: 'text' },
    { prop: 'totalPrice', label: '商品总金额', type: 'text', tooltipText: '不含优惠折扣' },
    { prop: 'transactionId', label: '微信支付交易号', type: 'text' },
    { prop: 'updatePrice', label: '订单金额', type: 'text', tooltipText: '差价' },
    { prop: 'updateTime', label: '更新时间', type: 'text' },
  ],
};
// 表单字段
const editForm = {
  // 筛选表单
  orderFilterMap: [
    { prop: 'username', type: 'input', label: '用户名', col: 0 },
    { prop: 'orderNo', type: 'input', label: '订单号', col: 0 },
    { prop: 'payStatus', type: 'select', label: '付款状态', optionKey: 'ORDER_PAY_STATUS', col: 0 },
    { prop: 'orderStatus', type: 'select', label: '订单状态', optionKey: 'ORDER_STATUS', col: 0 },
    { prop: 'orderSource', type: 'select', label: '订单来源', optionKey: '', optionKey: 'ORDER_SOURCE', col: 0 },
    {
      prop: 'orderPrice',
      type: 'inputRange',
      label: '订单金额',
      children: [
        { prop: 'orderPriceMin', type: 'inputNumber', label: '最小值' },
        { prop: 'separator', type: 'separator', label: '-', col: 4, },
        { prop: 'orderPriceMax', type: 'inputNumber', label: '最大值' },
      ],
      col: 0,
    },
    {
      prop: 'createTime',
      type: 'datePicker',
      label: '创建时间',
      startProp: 'createTimeStartTime',
      endProp: 'createTimeEndTime',
      dateType: 'datetimerange',
      format: 'yyyy-MM-dd HH:mm:ss',
      valueFormat: 'yyyy-MM-dd HH:mm:ss',
      pickerOptions: {
        disabledDate: function (time) {
          return time.getTime() > moment().format('x');
        },
      },
      col: 0,
      xs: 12,
      sm: 12,
      md: 8,
      lg: 8,
      xl: 6,
    },
    {
      prop: 'updateTime',
      type: 'datePicker',
      label: '更新时间',
      startProp: 'updateTimeStartTime',
      endProp: 'updateTimeEndTime',
      dateType: 'datetimerange',
      format: 'yyyy-MM-dd HH:mm:ss',
      valueFormat: 'yyyy-MM-dd HH:mm:ss',
      pickerOptions: {
        disabledDate: function (time) {
          return time.getTime() > moment().format('x');
        },
      },
      col: 0,
      xs: 12,
      sm: 12,
      md: 8,
      lg: 8,
      xl: 6,
    },
    {
      prop: 'payTime',
      type: 'datePicker',
      label: '付款时间',
      startProp: 'payTimeStartTime',
      endProp: 'payTimeEndTime',
      dateType: 'datetimerange',
      format: 'yyyy-MM-dd HH:mm:ss',
      valueFormat: 'yyyy-MM-dd HH:mm:ss',
      pickerOptions: {
        disabledDate: function (time) {
          return time.getTime() > moment().format('x');
        },
      },
      col: 0,
      xs: 12,
      sm: 12,
      md: 8,
      lg: 8,
      xl: 6,
    },
  ],
};
// 其他映射
const otherMap = {};
// 表单字段校验
const editRule = {};
export default {
  headerForm,
  tableColumn,
  editForm,
  otherMap,
  editRule,
};
